#pragma once

#include "Time.h"
#include "Singleton.h"
#include "HashedString.h"
#include "System.h"
#include "ITask.h"

class PhysicsTask : public ITask, public Singleton<PhysicsTask>
{
public:
	bool Start();
	void Update();
	void Stop();
	
	void AddSystem( HashedString& name, System* system );
	System* FindSystem( HashedString& name );
	void RemoveSystem( HashedString& name );
private:
	Time m_lastTime;
	System::Map_t m_systems;
};